package com.snail.model.pojo;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

/**
 * 课程分类表
 * @TableName biz_course_category
 */
@TableName(value ="biz_course_category")
@Data
public class BizCourseCategory {
    /**
     * 分类ID，主键自增长
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 分类名称，如IT、Java等
     */
    private String name;

    /**
     * 父分类ID，顶级分类此字段为NULL
     */
    private Integer parentId;

    /**
     * 分类层级：1-一级分类(如IT)，2-二级分类(后端/前端/运维)，3-三级分类(如Java/py/php)
     */
    private Integer level;

    /**
     * 创建人
     */
    private Integer createBy;

    /**
     * 更新人
     */
    private Integer updateBy;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;

    /**
     * 逻辑删除
     */
    private Integer deleted;
}